An Electric Power Assisted Steering System

ABSTRACT

An electric power assisted steering system comprising a torque sensor assembly comprising an input shaft, an output shaft, a torsion bar that interconnects the input shaft and the output shaft, and a processing means which produces a torque signal indicative of the torque carried by the torsion bar, an electric motor that is connected to the output shaft, and a motor position sensor that provides a motor position signal dependent on the angular position of the motor rotor that repeats each time the motor has rotated through a known angular range. The apparatus further including processing means that generates an absolute output shaft position signal from the motor position signal by adding to the output of the motor position sensor a first term indicative of the fixed offset between the motor position sensor zero position and the zero position of the input shaft and a second term indicative of the number of turns of the motor rotor away from the zero position of the input shaft. The processing means determines the base motor position value at start up of the system by comparing the motor position signal from the position sensor with the signal from the sensor associated with the sensing means of the upper shaft to determine three candidates and during subsequent unpowered motion of the steering system rules out candidates until only one remains plausible candidate.

This invention relates to improvements in electrical power assisted steering systems.

In a typical electric power assisted steering system, an electric motor, such as a three phase DC electric motor, is connected to a part of the steering mechanism, typically to the steering shaft that connects the steering wheel of the vehicle to the road wheels. A sensor, such as a torque sensor, produces a signal indicative of the torque applied to the steering wheel by the driver, and this signal is fed into a microprocessor. The microprocessor uses this signal to produce control signals for the motor which are indicative of the torque or current that is required from the motor. These control signals are converted into voltage waveforms for each phase of the motor within the microprocessor, and these in turn are transmitted from the microprocessor to a motor bridge driver.

The motor bridge driver converts the control signals, which are typically low level voltage waveforms, into higher level voltage drive signals that are applied to the respective phases of a motor bridge. A typical bridge comprises a set of switches that selectively apply current from a supply to the phases of the motor as a function of the high level voltage drive signals applied to the switches from the bridge driver circuit. By controlling the switches the current in the motor can be controlled relative to the motor rotor position, allowing the torque produced by the motor to be controlled. The motor in use is thereby caused to apply an assistance torque to the steering system that helps, or assists, the driver in turning of the steering wheel. Because this torque affects the output of the torque sensor, this forms a type of closed loop control allowing accurate control of the motor torque to be achieved.

The torque sensor typically comprises a torsion bar and two angular position sensors, one of which provides an output signal representing the angular position of the steering system on one side of the torsion bar and the other an output signal representing the angular position of the steering system on the other side of the torsion bar. When no torque is applied, the two output signals will be in alignment, but as a torque is applied the torsion bar twists causing the two angular position sensors to move out of alignment. This relative change in the output signals provides the measurement of torque needed.

To provide additional margin of safety in the event of a fault it is common to use a dual channel torque sensor, which produces two channels of information that each respectively provide a torque measurement. In use, the torque indicated by each channel is checked against the other and if they are in agreement it can be assumed that the torque value is reliable. If they are not in agreement, one or both channels may be faulty and an error flag can be raised. Typically when this happens the assistance torque is not applied by the motor

Although dual channel torque sensors give increased safety it is not possible to continue to safely apply assistance torque if one channel is faulty even if the other is not, partly because it may not be possible to tell which channel is faulty and which is reliable, and also because there is no way to provide protection against a subsequent fault occurring in the one remaining good channel.

An object of the present invention is therefore to provide an electric power assisted steering apparatus that ameliorates the problems related to prior art systems when a fault is detected.

According to a first aspect the invention provides an electric power assisted steering system comprising:

-   -   a torque sensor assembly comprising an input shaft that in use         is operatively connected to a steering wheel of the vehicle, an         output shaft that in use is operatively connected to the road         wheels of the vehicle, a torsion bar that interconnects the         input shaft and the output shaft, and a processing means which         produces a torque signal indicative of the torque carried by the         torsion bar,     -   an electric motor that is connected to the output shaft so that         a change in the angular position of the motor produces a         corresponding change in the angular position of the output         shaft, and     -   a motor position sensor that provides a motor position signal         dependent on the angular position of the motor rotor that         repeats each time the motor has rotated through a known angular         range such as once per motor rotor electrical rotation, the         apparatus further including processing means that generates an         absolute output shaft position signal from the motor position         signal by adding to the output of the motor position sensor a         first term indicative of the fixed offset between the motor         position sensor zero position and the zero position of the input         shaft and a second term indicative of the number of turns of the         motor rotor away from the zero position of the input shaft, and         in which the processing means is adapted to determine the base         motor position value at start up of the system by comparing the         motor position signal from the position sensor with the signal         from the sensor associated with the sensing means of the upper         shaft to determine a central, most likely, candidate, choosing a         higher candidate that is one repeat of the motor sensor signal         above this and a lower candidate that is one motor position         value below this, and during subsequent unpowered motion of the         steering system producing a torsion bar deflection value from         each candidate by comparing the absolute lower shaft signal with         the signal from the upper shaft sensing means and ruling out the         candidates that give implausible torsion bar deflection values         over time as the steering system moves until only one remains         plausible candidate.

At start up, which for a vehicle is often referred to as a key on event because it corresponds to the driver turning the key to start the vehicle in a traditional sense, any of the three candidates is plausible. However, in use all but one will produce a torsion bar deflection signal that has a value that is physically impossible due to fact that the physical torsion bar deflection is limited, for example by dog stops.

The processing means may be adapted to determine the torque carried by the torsion bar by determining the defletion of the torsion bar.

The processing means may determine the torque by comparing the output signals from angular position sensing means fixed to the upper and lower shafts.

The upper shaft sensing means may comprise a position sensor or sensors that provide a signal indicative of the absolute angular position of the upper shaft. The processing means may compare this with each of the three lower shaft position candidates to determine the twist of the torsion bar.

The torsion bar may be restrained so that it cannot twist beyond a defined angle, and a candidate may be ruled out when the torsion bar twist estimated from the candidate exceeds that angle.

The processing means may be arranged to continue to monitor until only one candidate remains. At this time the system may be arranged to start providing an assistance torque from the motor.

The lower shaft position signal derived from the motor may be used together with the upper shaft position signal to produce a back up or virtual torque signal. The apparatus may be arranged to use this to cross check the torque signal produced by the torque sensor. This allows any fault in the torque sensor to be identified.

The processing means that generates the torque signal may comprise:

-   -   a first torque signal generating means that generates a first         torque signal based on angular deflection of the torsion bar,     -   a second torque signal generating means that generates a first         torque signal based on angular deflection of the torsion bar.

The apparatus may further comprise an absolute position signal generating means that in use produces an absolute upper column position signal indicative of the angular position of the upper column shaft.

It may further comprise a virtual torque signal generating means that in use is adapted to determine a third torque signal from a combination of the motor position signal and the absolute angular position signal produced by the processing means

The apparatus may include an upper column angular position sensing means that produces at least one output signal that is dependent on the angular position of the upper column shaft;

-   -   a lower column position sensing means that produces at least one         output signal that is dependent on the angular position of the         lower column shaft, and the processing means may be configured         to produce the first torque signal from an output signal from         the upper and lower column sensors, and produces the second,         independent, torque signal from the output signals from the         upper and lower column sensors.

The absolute position signal generating means may comprise a secondary angular position sensor (typically independent from the upper column angular positions sensor mentioned in the preceding paragraph) that is attached to the upper column and produces an absolute position signal that is unique over a range in excess of one rotation of the upper column, preferably unique over 3 or more rotations. It should be unique over the full range of rotation of the steering wheel attached to the steering apparatus.

The sensor may be connected to the upper steering column through a gear, which may step up or step down the rotation of the sensor relative to the upper column shaft.

The generating means may observe the output of the angular position sensor to produce the angular position signal.

Alternatively, the absolute position signal generating means may be arranged to produce the independent absolute upper column angular position signal using one of the output signals from one of the upper and lower column positions sensors together with the output of the secondary angular position sensor. This may comprise using a differential process where the angle is worked out by looking at the difference between the signals from two sensors which have different phasing.

The absolute position generating means may share one or more sensors with the first torque signal generating means and/or with the second torque signal generating means.

The apparatus may include a cross checking means that is arranged to cross check the first and second torque signals with the third torque signal to check the integrity of the torque sensor.

The cross checking means may form part of the processing means and the virtual torque signal generating means may also form part of the processing means. The processing means may comprise one or more discrete signal processing units, each comprising an integrated circuit.

Each of the upper angular position sensing means used in generating the torque signals may comprise two angular position sensors, each of which is adapted to generate one of the output signals, each of which is independent of the other. Each sensing means will therefore provide two signal channels 1 and 2 allowing for the independent first and second torque signals to be produced.

More specifically, each of the angular position sensors of the upper sensing means may comprise a rotary sensing element carrying a modulating track attached to the shaft and a detector or a common rotary sensing element may be used with two detectors so that the two channels are fully independent but share a physical rotor. A similar arrangement may be provided for each of the sensors of the lower sensing means.

Each of the upper and lower column sensors may have a relatively high resolution (a fine angle sensor) and may produce a signal that repeats with a period that is less than one rotation of the respective upper and lower shaft so that on its own each of the output signals does not indicate the absolute position of either of the shafts. They may repeat at 20 degrees or at 40 degrees, or one at 20 degrees and the other at 40 degrees. The upper sensor(s) may repeat at 20 degrees and the lower sensor(s) at 40 degrees. Of course, other angles of repeat could be used within the scope of the invention.

The processing means may process the upper and lower signals of each channel to produce a torque signal by using a differential process in which the relative phase of the two signals is determined and the torque is derived from the difference between the two signal values. Where each output signal of a channel varies linearly before repeating, an increase in torque will cause a drift in phase between the two output signals of the channel that represents the torque across the torsion bar.

Where each of the output signals of the upper and lower column sensors does not provide an absolute column position measurement over more than one full revolution of the shaft the apparatus may further include a secondary column sensor that produces an output signal that is dependent on the position of the input shaft, and the processing means may produce the absolute upper column angular position signal by combining the output of this sensor with the output of one of the upper and lower column sensors. This additional secondary upper column angular position sensor may be part of the upper column positions sensing means.

This secondary sensor may comprise a part of the combined torque and position sensor.

Therefore, the combined torque and angular position sensor may comprise a total of five sensors: the upper column sensing means comprising the two upper column sensors and the secondary sensor, and the lower column sensing means comprising the two lower column sensors.

The processing means may output the following signals: torque channel 1, torque channel 2, fine angle signal from the upper sensor (or an upper virtual angle from lower and upper sensors as described below) and a coarse angle signal.

The processing means may be adapted to produce the absolute angular position signal for the upper column by combining the secondary sensor output with one of the lower shaft sensor output signals and prior to combining or during the combining the processor may correct the output signal of the lower column shaft sensor to remove the effect of any twisting of the torsion bar as indicated by the torque signal that is produced by the processor.

The correction is needed to bring the frame of reference of the lower sensor into that of the upper column sensor, allowing the virtual upper signal to be combined with the coarse angle signal to generate an absolute upper column angle signal. If an output signal from the upper column sensing means in the production of the absolute position signal, with the lower column shaft sensors playing no part, the correction would not be needed.

The system may include a motor controller that receives at least one of the torque signals and causes the motor to produce an assistance torque. It may also receive the absolute position signal produced by the processor.

The skilled reader will understand that by using the term “connected” we mean that the parts in are in direct contact or are connected indirectly, for instance through intermediate parts such as a gearbox that is located between the motor and the output shaft.

The motor position sensor may comprise a physical position sensor such as a rotary encoder. Alternatively it may comprise a virtual position sensor in which the position of the rotor is determined by monitoring one or more parameters of the motor, such as the motor current in one or more of the motor phases and the motor inductance.

The third torque signal may be generated by producing a virtual torque signal and to do so the processing means may comprise Lower column absolute position determining means that determines the absolute position of the lower column from the motor position; and

Virtual torque determining means that compares the absolute upper column position signal with the lower absolute position signals to determine the deflection of the torsion bar and therefrom the torque.

The virtual torque may be determined from the angular deflection of the torsion bar.

The first angular position signal and additional angular position signal (from the additional upper column sensor when provided) may repeat periodically as the upper column shaft rotates, the signals drifting out of phase over multiple rotations to allow an absolute position measurement over more than one rotation to be determined.

To determine the absolute angular position of the lower shaft it is required that the processing means can determine the absolute position of the motor in the same frame of reference as the column shaft.

The motor position sensor may produce a value that increases from a minimum to a maximum every 360 degrees of electrical rotation, repeating ad nauseum for each full electrical rotation thereafter.

To facilitate further processing, an unwrapped motor position signal may be formed. At key on this is initialised to the initial reading from the motor position sensor, i.e. to the initial measured electrical position at key on. At every subsequent software iteration the difference between the current and the previous motor position signal is added to the unwrapped motor position signal. When forming the difference between current and the previous motor position signals, any difference >180 deg or less than −180 deg indicates that the motor position signal has wrapped. 360 degrees is added or subtracted to the difference to bring it back into the range +/−180 deg. This corrected difference is used to update the unwrapped motor position signal.

To convert this repeating signal into an absolute position signal in the upper column shaft frame of reference, the processing means may additionally add to this signal a delta offset value that is indicative of the angular position of the motor within one electrical rotation at the time when the upper column is at zero degrees with no torque applied across the torsion bar.

In addition the processing means may also apply to this signal the base motor position value.

Both of these offsets are required if the lower column absolute position is to be determined in the frame of reference of the upper column, without which the comparison between absolute lower column position and upper column position could not be made.

The delta offset may be stored in a memory and may be retained for use during key on when the system is switched to a state in which position measurements are made.

The base motor position value cannot be stored for use at key on because it may change when the system is switched off and measurements are not being taken.

The torque sensor and the motor position sensor may each comprise discrete processing units, each having its own integrated circuit and timing. The applicant has appreciated that this can lead to small timing errors in the capture of the position signals, which can give unacceptable errors between the torque signals produced by the torque sensor and the virtual torque signal.

To compensate for this, each processing unit may apply a time stamp to the signals indicating the precise time that the signal value corresponds to. During any processing that requires signals from the two processing units to be combined a correction may be applied to compensate for any differences in the time stamps. This effectively allows the signals to be adjusted to bring them to precisely the same frame of reference (in time).

The reader will appreciate that in at least one arrangement within the scope of the present invention, there is some commonality between the parts that are used to form one of the torque channels and the parts used to produce the absolute angular position signal. This can lead to a common mode of failure whereby a fault in the torque signal can be produced, which leads to a fault in the absolute position signal.

The apparatus may therefore be arranged to perform a cross check between the output signal from the secondary upper shaft angular position sensor and a virtual upper column position signal, producing an error signal if the two signals do not vary relative to each other in an expected manner as the steering rotates. In an error free system, the virtual column position signal and secondary position sensor output signal will both follow each other as the steering is turned. In practice they will both vary relative to one another due to run out of the sensor rotors and other effects, and this variation will be constant and a characteristic feature of the system that can be learnt.

The processing means may therefore be adapted to learn the expected variation with angular position during an initial learning phase of the apparatus following key on.

The learnt variation may be stored in a memory. A set of characteristics may be learnt for rotation of the steering in one direction and a different set may be learnt for variation of the steering in the other direction.

The stored data may comprise an offset value corresponding to each of a set of angular positions of the steering system, for example 100 equally spaced angular positions. One set may be stored for movement in a first direction and another set for movement in the other direction.

In at least one arrangement the secondary angular position sensor may have a poor resolution (a coarse signal).

In a further refinement, each value of the output signals may be marked with a precise time stamp indicating the time at which the value is correct. This time stamp may be tied to a clock signal that drives each processor that generates the signal.

The apparatus may be arranged so that, when any two signals are combined, the time of the two signals is aligned based on the respective time stamps so that any difference associated with differences in time of the signals is reduced.

By correcting the signals to ensure they are aligned in time the accuracy of the processed signals, such as torque or motor position, can be improved.

According to a second aspect the invention provides a method for use in controlling an electric power assisted steering system of the kind which includes a torque sensor assembly comprising an input shaft that in use is operatively connected to a steering wheel of the vehicle, an output shaft that in use is operatively connected to the road wheels of the vehicle, a torsion bar that interconnects the input shaft and the output shaft, and a processing means which produces a torque signal by comparing the output signals from angular position sensing means fixed to the upper and lower shafts, an an electric motor that is connected to the output shaft so that a change in the angular position of the motor produces a corresponding change in the angular position of the output shaft, and

-   -   a motor position sensor that provides a motor position signal         dependent on the angular position of the motor rotor that         repeats each time the motor has rotated through a known angular         range such as once per motor rotor electrical rotation, the         method comprising the steps of:     -   generating an absolute output shaft position signal from the         motor position signal by adding to the output of the motor         position sensor a first term indicative of the fixed offset         between the motor position sensor zero position and the zero         position of the input shaft and a second term indicative of the         number of turns of the motor rotor away from the zero position         of the input shaft,     -   determining the base motor position value at start up of the         system by comparing the motor position signal from the position         sensor with the signal from the sensor associated with the         sensing means of the upper shaft to determine a central, most         likely, candidate,     -   choosing a higher candidate that is one repeat of the motor         sensor signal above this,     -   choosing a lower candidate that is one motor position value         below this, and     -   during subsequent reduced authority motion of the steering         system producing a torsion bar deflection value from each         candidate by comparing the absolute lower shaft signal with the         signal from the upper shaft sensing means and ruling out the         candidates that give implausible torsion bar deflection values         over time as the steering system moves until only one remains         plausible candidate.

By reduced authority we mean operation without the application of any assistance torque, or when a reduced or otherwise restricted level of assistance torque is applied.

There will now be described by way of example only one embodiment of a steering system that incorporates features in accordance with the present invention with reference to the accompanying drawings of which:

FIG. 1 is a general view of a part of an electric power assisted steering system which falls within the scope of the present invention;

FIG. 2 is a block diagram of the key parts of an electrical circuit of the system of FIG. 1;

FIG. 3 is shows the key components of a combined torque and angular position sensor used within the system of FIG. 1;

FIG. 4 is a general view of the mechanical arrangement of the sensor of FIG. 3;

FIG. 5 shows in more detail one arrangement of the sensing electronics of the sensor of FIG. 4;

FIG. 6(a) to (b) show the variation in the output signals of the sensor of FIG. 3;

FIG. 7(a) is system diagram showing the inputs to the processing unit, the torque output from the unit that is fed to the motor controller and the processing stages that may be performed within the processing unit; and FIG. 7(b) shows in more detail the sub-stages that may be performed to generate a virtual upper column torque and the two torque channel signals;

FIG. 8(a) to (c) shows the effect of twist in the torsion bar on the relative positions of the upper and lower shaft;

FIG. 9 shows (a) the variation in motor position sensor output, (b) corresponding variation in lower column position (taken with zero including a notional delta offset of zero degrees in this example) and (c) the variation in base motor position value; and

FIG. 10 shows the variation between angular position sensor outputs as the steering shaft 5 is rotated due to run-out and the like in the sensor rotors; and

FIG. 11 shows the generation of a 0-1480 signal produced by observing the difference between the 40 degree and 296 degree angle signals.

As shown in FIG. 1, an electric power assisted steering system 1 is located within a steering apparatus between the steering wheel and the road wheels. The system comprises an electric motor 2 which has an output shaft 3 that is connected to a lower steering column shaft by a gearbox 4, usually comprising a worm gear that cooperates with a wheel gear. The lower shaft is connected to the road wheels of the vehicle, indirectly thought a rack and pinion or other connection. An upper column shaft supports the steering wheel, and connecting the upper shaft to the lower shaft is a torque sensor 6. The torque sensors comprises a torsion bar that connects the upper and lower shafts, designed to twist by a known amount in response to a torque applied across the torsion bar as the driver turns the steering wheel. The maximum twist is limited by providing dog stops on the upper and lower shafts to +−5 degrees.

The torque sensor detects the twist of the torsion bar and converts this into at least one torque signal, although as will be apparent in a preferred embodiment it produces two torque signal channels, and one of these torque signals is fed to a controller 7 of a motor drive circuit that is provided within a microprocessor chip. The controller produces motor phase voltages that are applied to the switches of a motor bridge associated with each phase of the motor to cause the motor to produce a torque that assists the driver. This is usually proportional to the measured torque, so that as the driver applies a higher torque the motor provides a higher amount of assistance to help turn the wheel.

As shown in FIG. 2, the controller comprises a microprocessor 8 that receives the torque signal and a measure of the current i flowing in the motor (either in each phase or the overall current into or out of the motor). It also receives a measure of the motor rotor position from a motor rotor angular position sensor connected to the motor, or it calculates this internally from the current signals. The rotor position together with current allows the controller to determine the torque that is being applied. The measure of the torque from the torque sensor is used by the controller to determine what torque it is to demand from the motor. Again this is well known in the art, and many different control strategies and motor phase voltage waveforms to achieve the required torque have been proposed in the art.

The output of the microprocessor 8 will typically be a set of motor phase voltage waveforms, typically PWM waveforms that represent the phase voltages that are required by the controller to achieve the desired motor current and hence motor torque. These are low level signals, and are fed from the controller to the inputs of a motor bridge circuit 9. The function of the motor bridge circuit 9 is to turn the low level signals into the higher level drive signals for the switches of a motor bridge 10. For instance with a three phase motor each phase will be connected to the positive supply through a high switch and the ground through a low switch, only one of which will be connected at any given time according to the pattern defined by the PWM switching waveforms.

FIG. 3 shows an exemplary torque sensor assembly in more detail and FIGS. 4 and 5 show still more detail of parts of the sensor. In its most generic form the torque sensor can be any arrangement that produces two torque channels and an upper column position signal. Ideally these two torque channels and also the upper column positon signal should be independent from each other.

In this example a sensor has been selected that comprises a combined two channel torque and single channel upper column position sensor having a total of five sensors 11,12,13,14 and 15 combined in a single integrated unit with a common pre-processing unit that produces the sensor output signals from raw internal signals from the sensors. Three of the sensors are located on an upper column shaft 5 a and two on a lower column shaft 5 b, the two shafts being connected by a torsion bar 18 that twists as torque is applied across the shaft 5.

The five sensors comprise:

-   -   Two fine angle upper column angular position sensors 13,14         attached to the upper column shaft end of the torsion bar and         each producing an independent angular position signal (channel 1         signal and channel 2 signal) that together form a part of an         upper column sensing means;     -   two fine angle lower column angular position sensors 11,12         attached to the lower column shaft end of the torsion bar         closest to the motor and each producing an independent angular         position signal (channel 1 and channel 2 signal) that together         form a lower column sensing means; and     -   a secondary upper column position sensor 15 that produces a         coarse resolution angular position signal and which can be         considered a further part of the upper column sensing means.

The processor 17 uses a subtraction principle to detect twist in the torsion bar, subtracting the position of the lower shaft from that of the upper shaft (or vice versa) to determine an angular deflection value for the torsion bar. This is done twice, once for the upper and lower channel 1 signals, and again for the upper and lower channel 2 signals to give two independent torque measurements or torque channels.

The torsion bar 18 is designed to twist through a maximum of +/−5 degrees about a centre position in response to a maximum expected torque in each direction as described above. Once this range has been reached further twisting is prevented by the interengagement of the dog stops on the upper and lower column shafts, saving the torsion bar from damage and giving a solid connection should the torsion bar ever fail.

Each of the angular position sensing means includes a respective metal rotor 19,20 comprising a flat metal disk having a plurality of equally spaced radial arms forming an annular track of cutouts 19 a that extends around the disk. There are therefore two disks in total, one on the lower shaft and one on the upper shaft. The relevant parts of an exemplary sensor assembly are shown in FIGS. 4 and 5 of the drawings.

The angular width of each cut out is equal to the angular spacing between each cut-out. The spacing of the cut-outs of the lower shaft rotor is 40 degrees and the upper is 20 degrees. (in the example rotor and stator of FIG. 5 the angle is set by the spacing X degrees between the radial arms of the coils, and this will differ for the upper and lower sensors). They differ due to physical constraints in the manufacture of the particular sensor assembly are in some ways are unique to this described embodiment. Indeed it would be preferred if they were both 40 degrees or more in periodicity.

Each rotor 19,20 cooperates with a stator support part 21 that comprises a printed circuit board to form two angular position sensors. The board 21 carries the active parts of the sensing means comprising two excitation coils and two sets of receiver coils, one excitation coil and one set of receiver coils forming each of the two sensors. The excitation coil of each sensor forms part of an LC circuit and generates a magnetic field. This field induces a current in the metal rotor and in turn the rotor generates its own magnetic field that couples back to the respective receiver coils of that sensor on the pcb. The induced voltages in each of the three receivers varies according to the rotor position and the pre-processing unit of the sensor assembly converts the three signals into an output signal for the sensor that varies linearly with rotor position. As the rotor rotates each of the angular position signals will vary linearly with a periodicity of 40 degrees for the lower rotor and 20 degrees for the upper rotor. The output signals therefore repeat many times during a complete revolution of the upper shaft and so on their own do not provide an indication of the absolute position of the shaft over the full range of movement of the upper shaft which is typically between 3 and 4 turns lock to lock of the steering wheel.

FIG. 6(a) and (b) shows how the output signal from the upper and lower sensor output signals vary over one full rotation of the steering shaft in the case where no torque is applied. As can be seen each varies linearly over 20 or 40 degrees before repeating. If a torque is applied the relative phase of these ramp signals will vary and this is what is used to determine the torque (the maximum twist of the torsion bar is considerably less than 20 degrees so there will always be an unambiguous phase change between the ramps that can be detected). This form of differential measurement across two sensors is well known in the art and so will not be explained further here.

The upper and lower sensor output signals are fed into a processing means 19, shown in FIG. 2 and in more detail in FIG. 7(a), which outputs the torque signal that is fed to the motor controller 8.

In use, as shown in FIG. 7a , the processing means 19, typically a signal processor formed from a microprocessor and associated memory which contain programme instructions, will in a first stage 19 a compare the output signals for channel 1 from the upper and lower angular position signals to generate a first (channel 1) torque signal T1, and does the same for the channel 2 signals to produce a channel 2 torque signal T2 that is independent from channel 1. In normal operation these will provide the same torque value.

In addition, the processor produces 19 b an absolute angular position signal representative of the absolute position of the upper shaft. This cannot be produced using the channel 1 or channel 2 angular position signals on their own because they repeat with a periodicity far less than one rotation of the upper column shaft. To get absolute position information, the processor therefore also uses the output signal from the secondary upper column shaft position sensor. This process, formed within stage 19 a, is shown in more detail in FIG. 7(b).

This secondary sensor is connected to the upper column shaft through a gear wheel. This can be seen in FIG. 3. This sensor 15 has a much lower periodicity than either of the upper and lower column sensors, and in this example outputs a linearly varying signal that repeats every 296 degrees of rotation of the upper shaft. This is shown in FIG. 6(c). It comprises a single magnet with a north and south pole that rotates past a single Hall effect sensor, giving a ramped waveform that varies through one cycle over the 296 degrees. The signal is a “coarse” signal because for a given level of bits in the digital signal it must cover all the values from 0 to 296. By comparison, for the 20 degree sensor it is a “fine” signal because the bits in the digital signal must cover a small range of angles, e.g. more than 10 times the angular resolution for a given number of bits in the digital signal.

To get the absolute column position the processor may process the value of the secondary sensor output signal, repeating every 296 degrees, with that of the 20 degree or 40 degree sensor. In this example, it processes it with a modified form of the channel 1 signal from the lower column sensor, modified to remove the effect of twist of the torsion bar to form a “virtual upper column position signal” that repeats every 40 degrees of rotation. This comparison enables a unique angular position signal for the upper column to be produced that repeats every 1480 degrees (since this is the angle of rotation before the pairing of values of the secondary sensor and virtual upper column signal). This is shown in FIG. 11.

The “virtual upper column position signal” is a modified form of the output of the lower shaft angular position sensor. The lower shaft angular position is modified, or compensated, by the processor to take into account the effect of torque twisting the torsion bar. The “virtual upper column position signal” repeats every 40 column degrees, whereas the upper angle position sensor repeats every 20 degrees. This transformation is necessary so that the combined signal has appropriate range and can cover the required 3 or more turns of steering wheel lock before a repeating (i.e. non unique angular position value is calculated).

Note that this use of a “virtual” upper column position signal is specific to this embodiment where the 20 degrees sensor is on the upper column and the 40 on the lower. If they had been the other way round it would be possible to combine the secondary sensor value with the upper column sensor channel 1 or channel 2. As it is, use of a 20 degree sensor would not give the required unique absolute position signal over a typical 3 to 4 turn lock to lock as the pair of signals would give non-unique values after far less rotation of the upper column shaft, less than the required 3 to 4 turns lock to lock.

The processing means 19, when functioning correctly as described above, produces two torque signals (channel 1 and channel 2) and an absolute upper column position signal using some of the sensor information common to the production of channel 1 of the torque signal.

The controller 8 requires only one of the two torque signals to function, i.e. it needs a valid torque signal. Therefore, before passing one of the channels to the controller the processor of the combined torque and angular position sensor checks in a stage 19 c that they are in agreement. If they match, the average of the two torque signal is fed to the controller 9. If they match, it is assumed that the value is correct.

If the check stage 19 c sees that they do not match, and do not match by more than a safe acceptable amount, the two torque channels are also checked in that stage against a third “virtual” torque signal T3 that is produced using a motor position sensor 20 as will now be described. If the third signal matches one of the torque channels T1 or T2, then that torque channel is fed to the controller 8 as it is assumed to be reliable. If it does not match either channel 1 of channel 2 torque an error is flagged at a diagnostic output 19 d and assistance is stopped.

In addition to the combined torque and position sensor the apparatus therefore includes a motor position sensor 20 that has its own processor 21. The motor position sensor 20 is similar in construction to one of the position sensors of the torque sensor, with a rotor and a stator. The rotor and stator form an incremental encoder with a metal encoder disk defining encoder regions over a full revolution similar to those of the torque sensor attached to the motor rotor. The sensor also comprises three Hall effect sensors that cooperate with an index track, each producing a signal that is 120 degrees out of phase with the other two. Hall sensor 1 reads 1 from 0-120 degrees electrical and zero for all other angles. Hall sensor 2 reads 1 from 120-240 degrees electrical and zero for all other angles. Hall sensor 3 reads 1 from 240 to 0 degrees and 0 at all other angles.

The incremental encoder has two sensors 90 degrees out of phase with the other to give an A and a B channel. As the rotor rotates through one full electrical motor revolution each of the A and B channels will vary between a 0 and 1 value to give a repeating waveform as shown in FIG. 9. Providing two channels allows the direction of rotation to be determined by looking at the order in which the edges of each signal occur and whether they are rising or falling edges. The incremental encoder counts up as the rotor rotates until it has gone through one full rotation, at which time the count is reset to zero and the count repeats, or the direction changes and the counter counts down.

The motor 2 has four electrical rotations per mechanical rotation, so one cycle of the incremental encoder (360 degrees electrical) equals 90 degrees mechanical rotation of the motor rotor. The motor output shaft spins with the rotor and is connected to the lower column shaft through a gearbox with a ratio of 20.5 turns (of the motor) for one full turn of the lower column shaft. Thus, each cycle of the motor position signal will correspond to 4.39 degrees of rotation of the lower column shaft. This is shown in FIG. 9(a).

The output of the motor sensor is converted by the processing unit, in stage 19 e, into a measure of position expressed in the upper column shaft reference frame by the processing unit 19 using the equation:

Absolute virtual lower column position=base motor offset+unwrapped motor position signal value delta offset;

Where:

-   -   delta motor offset is the value of (wrapped) motor electrical         position when the (virtual compensated) upper column angle         sensor reads zero degrees (and there is no torsion bar         deflection)     -   base motor offset has a value indicative of how many full         electrical turns the upper column was away from zero degrees at         key

The delta and base motor values are needed to place the motor position signal into the same frame as reference as the upper column absolute position signal that is produced by the processor of the combined torque and position sensor.

The value of delta offset can vary by up to one motor position sensor wrap (one complete motor rotor electrical revolution) which means it will take a value of between 0 and 4.39 degrees in this example. The actual value depends on how the motor position sensor is aligned with the steering column lower shaft during assembly and in use will not vary. Similarly, each increment in the counter (the base value) will correspond to 4.39 degrees of rotation away from a central zero position.

The method by which the processing means produces the third virtual torque signal, and in particular how it calculates the base motor position value, will now be explained. This should be read in conjunction with FIG. 7(a) which shows the processing stages performed by the processing means 19.

As described above a virtual lower column position signal is generated in stage 19 e from the motor position signal 20 provided that the count value (the base motor position) is reliable and the delta offset of the motor during manufacture is known. A process of determining these during operation, such as following key one when they are not reliable, is explained later, but for now it is assumed that these are known.

From the virtual lower column position signal the location of the lower column shaft in the frame of reference of the upper column shaft can be determined. The absolute position of the upper column shaft is already known because it is produced by the processor unit 19 as part of the generation of the two torque channels. These two signals are then compared in a stage 19 f to determine the difference between these two signals. This difference indicates the amount of twist of the torsion bar. Processing this with knowledge of the properties of the torsion bar, i.e. how much it twists for a given torque, allows the torque in the torsion bar to be determined by the processor to form the virtual torque channel T3.

Note that whilst a virtual lower steering column shaft position signal can be produced from the motor position sensor it is not possible to produce an accurate virtual upper column position signal because the torque is not known and hence the effect of offset between the lower and upper shafts due to twisting of the torsion bar is unknown. However, a good estimate of the twist can be made if the channel 1 or channel 2 torque T1 or T2 is relied upon in order to perform the transformation to the upper column frame of reference.

The skilled person will appreciate that the production of the virtual torque depends on being able to express the angular position of the motor rotor and the angular position of the upper column shaft in the same frame of reference. There are two primary factors, in addition to the actual torque applied to the torsion bar that determine the relationship between these signals (others being the relative timing of the signal capture and any gearbox lash or compliance between the motor output shaft and the lower column shaft): Delta offset and Base motor position.

Determining the Delta Offset

The delta offset will generally be stored in permanent memory and can be learnt after manufacture and reused on each key on. It will not change. One method by which the processing means can learn the offset is to look at the motor position signal when it is known that there is zero torque across the torsion bar and when the upper column shaft is straight ahead, i.e. at the zero position. This check can be made at any time as long as the torque sensor is working, i.e. both torque channels give the same reading.

Alternatively, the apparatus may take the difference between upper column angle corrected for torsion bar deflection (so now a lower column angle) and unwrapped motor angle. It may then consider the remainder of this angle after division by 4.39 degrees. That is delta motor offset. This approach has the advantage that can operate continuously. Because there is no guaranteed alignment of units in vehicles it is possible that in some vehicles the upper column angle will never read zero degrees if the steering gear limits travel to, say ˜1080 degrees, of a total range of, say, 1480 degree of output of the sensor.

Determining the Base Motor Position.

Unlike the delta offset, which only has to be learnt once due to the fixed angular relationship between the motor and the lower column shaft, the base motor position will generally be unknown at key on. This is because when the system is keyed off, and not learning or monitoring the sensor signals, the steering may be turned through any angle which will cause the motor rotor to rotate through one or more full turns. At key on, the relative angle of the motor rotor can be determined directly from the motor position sensor but the base motor position will be unknown as the counter value has not been updated and will therefore be unreliable.

A process of learning the base motor position during use of the system after key on and prior to providing any assistance torque (during a limp home mode) is therefore provided within the processing means.

Initially, after key on, an estimate of the base motor offset is generated by subtracting the lower column angle (motor angle corrected for delta motor offset) from the upper column angle and rounding the result to the nearest motor rotation (4.39 degrees).

In addition, a base motor offset that is one wrap less than this is chosen, and one which is one wrap more than this central estimate is taken. Each one of these is a plausible base motor value offset if there is a large magnitude torque carried by the torsion bar at key on because the torsion bar deflection could have introduced at most one addition rotation of the motor (one motor rotation is 4.39 degrees of upper shaft rotation and the maximum allowed rotation of the torsion bar is 5 degrees which is less than 2*4.39 degrees.

The need for three estimates can be understood with reference to FIG. 8, which shows that there may be a twist in the torsion bar, alpha, of unknown magnitude between +−5 degrees from zero. With zero twist, the two marks shown in FIG. 8(a) will be in line as shown and the central estimate will turn out to be correct. With a positive 5 degree twist, the central estimate will be wrong by 5 degrees or 1 turn (when rounded) as the motor will have turned by 1 more rotation than the number suggested by the central estimate. With a negative 4 degree twist, the central estimate will again be wrong as the motor will have made one less turn.

Next, as the vehicle is driven, the deflection of the torsion bar is calculated based on each of the three base motor position values. At extremes of torque in the torsion bar, two of these estimated base motor position values will give an impossible amount o twist in the torsion bar and so can be ruled out.

The behaviour of the system in each of the three possible scenarios at key on (zero torque, high positive torque and high negative torque) is set out below.

Zero or Low Torque at Key On.

In this situation the central value is the correct one, although initially this is not known. The torsion bar deflection is calculated using all three base motor values. As a large positive torque is applied, the value of the calculated torsion bar deflection (or the calculated third virtual torque value) will fall within a plausible range for the central value but fall outside of a plausible range for the highest base motor position value. This highest value can therefore be eliminated as a plausible value for key on. Similarly as a high negative torque is applied the third torsion bar deflection will stay within an acceptable range for the central value but the low base motor position value will give a torsion bar deflection that is outside of an acceptable range and can be eliminated leaving only the central value as the correct value. This is then used as the base motor position value and the system is taken out of limp home mode to apply an assistance torque.

Positive Torque Across the Torsion Bar During Key On

In a similar manner, if there was a positive torque present during key on and a negative (or less positive) torque is applied to the torsion bar then first the_lowest estimate will give a torsion bar deflection that is outside of an allowable range and can be eliminated. As more negative torque is applied the central estimate will be eliminated.

Negative Torque Across the Torsion Bar During Key On

In a similar manner, if there was a negative torque present during key on and a positive torque is applied to the torsion bar then first the highest estimate and then the central estimate will give a torsion bar deflection that is outside of an allowable range and can be eliminated.

The applicant has also appreciated that any small timing errors in the system can lead to large errors in the estimate of torque. This is a particular problem where signals are supplied by two different processors, as will be the case where one is handling the motor position sensor processing and the other the torque sensor processing. To alleviate this problem a time stamp is applied to each position signal value generated in each processing unit. Then, when signals from different units are combined a correction can be applied to bring them into exactly the same time frame allowing the magnitude of any error to be reduced to within acceptable boundaries.

To improve the accuracy of the signals produced by the various processors, each sample value of the raw signals produced by the sensors, e.g. the angular positions sensor output signals and the motor position signal, are given a time stamp. The time stamp represents the precise moment in time that the sample was captured. In a digital system, each output signal will comprise a stream of discrete values, each representing the state of the measured parameter at a given time. The exact timing will depend on the clock for the processor used to produce the signals, and where two or more processors are used the edges of the clocks may not be exactly aligned or the samples may be captured one or more clock cycles apart.

When comparing the signals, the time stamp allocated to each value is observed by the processor. The difference between the two time stamps is then determined by the processing means and multiplied by a measure or estimate of the column velocity determined from historical positions measurements. This generates a correction value which can be added to the measured signals to effectively extrapolate the older of the signals (the one with the oldest time stamp) to the latest signal frame. This methodology assumes velocity is constant in that time, which is reasonable in most cases. The signals are thereby “time aligned” so that they correspond to the exact same moment in time.

By time aligning the signals a useful increase in the accuracy of the signals that are produced can be achieved.

Cross check of angle signals.

In this particular implementation, the virtual torque is produced by relying on the channel 1 lower and upper angle signals being without error, since these are required to produce the virtual upper column angle signal. In the case where torque channel 2 has failed we end up with a situation where both torque channel one (our remaining good channel) and the virtual torque signal depend on the same components functioning correctly. This is a potential common mode failure mode. A failure in (say) the upper column angle signal can cause both torque channel one and the virtual torque signal being in error by the same amount. The virtual torque diagnostic will not detect this failure. To prevent this failure mode we introduce an independent check on the virtual upper column angle signal. This check uses independent (coarse angle) information to detect the common mode failure.

A check is therefore made by the checking unit in which two absolute angular position signals are produced from the fine angle 40 degree sensor and the coarse sensor, the two then being compared.

The first of these signals is produced using the fine sensor for the resolution and the value of the coarse sensor to indicate which “repeat” of the 40 degree sensor is present (by looking at the relative phasing between the outputs of the two sensors). For example, with an absolute position of 70 degrees the fine sensor will read “30 degrees” and the coarse sensor a coarse 70 degrees which allows the processor to determine that the fine sensor is on 1 repeat and give a position of 30+40 degrees=70 degrees.

The second absolute position is worked out by using the coarse sensor to determine the resolution and the fine angle sensor to determine what repeat (i.e. multiple of turns of the coarse sensor) the steering is on. For example with 70 degrees the coarse will read 70 degrees and a cross check with the fine angle will reveal that the coarse sensor is on its first turn, giving an angle of 70+0=70 degrees.

If there is an error in either sensor, the two absolute position values will not agree and an error will be flagged up by the checking unit.

The checking unit may also carry out a check of the variation in the virtual upper column angular position value and the output of one or both of the upper column position signals with a change in angle of the shaft 5. The applicant has appreciated that as the shaft rotates there will be some variation in the output of each sensor relative to the other due to things such as run out of the rotors. These variation between the two sensors with angle will be consistent during use of the assembly, and can be monitored as the steering rotates and store in a memory. If the variation between the sensors with angular position does not vary in the expected manner, the checking unit may flag up an error. Since there are many instances during use of a steering system where the shaft is rotating it is easy to regularly perform this check within the checking unit.

FIG. 10 shows a typical variation with angle for both a positive and a negative direction of rotation. The two differ due to effects such as lash within the sensor. These difference values may be stored in a memory of the checking unit. Alternatively, rather than absolute difference values the change in value with change in angle may be stored—eg error increases by X for a 1 degree positive rotation, then decreases by Y for the next degree and so on. Again, the checking unit would be looking for the expected pattern of change.

Of course, the check could be performed outside of the checking unit, for example is a separate processing unit or within the combined torque and angular position sensor assembly itself. 

1. An electric power assisted steering system comprising: a torque sensor assembly comprising an upper shaft that in use is operatively connected to a steering wheel of a vehicle, a lower shaft that in use is operatively connected to road wheels of the vehicle, a torsion bar that interconnects the upper shaft and the lower shaft, and a processing means which produces a torque signal indicative of the torque carried by the torsion bar, an electric motor that is connected to the lower shaft so that a change in an angular position of the motor produces a corresponding change in an angular position of the lower shaft, and a motor position sensor that provides a motor position signal dependent on an angular position of a motor rotor that repeats each time the motor has rotated through a known angular range, the system further including processing means that generates an absolute lower shaft position signal from the motor position signal by adding to an output of the motor position sensor a first term indicative of a fixed offset between the motor position sensor zero position and a zero position of the upper shaft and a second term indicative of a number of turns of the motor rotor away from the zero position of the upper shaft, and in which the processing means is adapted to determine a base motor position value at start up of the system by comparing the motor position signal from the motor position sensor with the signal from the sensor associated with the sensing means of the upper shaft to determine a central candidate, choosing a higher candidate that is one repeat of the motor sensor signal above this and a lower candidate that is one motor position value below this, and during subsequent unpowered motion of the steering system producing a torsion bar deflection value from each candidate by comparing a signal indicative of the absolute angular position of the lower shaft signal with the signal from the upper shaft sensor and ruling out the candidates that give implausible torsion bar deflection values over time as the steering system moves until only one plausible candidate remains.
 2. The system according to claim 1 in which the upper shaft sensing means comprises a position sensor or sensors that provide a signal indicative of an absolute angular position of the upper shaft.
 3. The system according to claim 1 in which the torsion bar is restrained so that it cannot twist beyond a defined angle, and a candidate may be ruled out when the torsion bar twist estimated from the candidate exceeds that defined angle.
 4. The system according to claim 1 in which the processing means is arranged to continue to monitor until a time in which only one candidate remains and only after this time start providing an assistance torque from the motor, assistance being prevented or restricted prior to that time.
 5. The system according to claim 1 in which the processing means that generates the torque signal comprises: a first torque signal generating means that generates a first torque signal based on angular deflection of the torsion bar, a second torque signal generating means that generates a second torque signal based on angular deflection of the torsion bar.
 6. The system according to claim 1 which further comprises an absolute position signal generating means that in use produces an absolute upper column position signal indicative of the angular position of the upper column shaft that is used in generating the candidates.
 7. The system according to claim 1 which comprises include an upper column angular position sensing means that produces at least one output signal that is dependent on an angular position of the upper column shaft; a lower column position sensing means that produces at least one output signal that is dependent on an angular position of the lower column shaft, and the processing means may be configured to produce a first torque signal from an output signal from the upper and lower column angular position sensing means, and produces a second, independent, torque signal from the output signals from the upper and lower column angular position sensing means.
 8. A method for use in controlling an electric power assisted steering system which includes a torque sensor assembly comprising an input shaft that in use is operatively connected to a steering wheel of a vehicle, an output shaft that in use is operatively connected to road wheels of the vehicle, a torsion bar that interconnects the upper shaft and the lower shaft, and a processing means which produces a torque signal by comparing the output signals from angular position sensing means fixed to the upper and lower shafts, an electric motor that is connected to the output shaft so that a change in an angular position of the motor produces a corresponding change in an angular position of the lower shaft, and a motor position sensor that provides a motor position signal dependent on an angular position of a motor rotor that repeats each time the motor has rotated through a known angular range, the method comprising the steps of: generating an absolute lower shaft position signal from the motor position signal by adding to an output of the motor position sensor a first term indicative of a fixed offset between the motor position sensor zero position and a zero position of the upper shaft and a second term indicative of the number of turns of a motor rotor away from the zero position of the upper shaft, determining a base motor position value at start up of the system by comparing the motor position signal from the motor position sensor with the signal from the sensor associated with the sensing means of the input shaft to determine a central candidate, choosing a higher candidate that is one repeat of the motor sensor signal above this, choosing a lower candidate that is one motor position value below this, and during subsequent reduced authority motion of the steering system producing a torsion bar deflection value from each candidate by comparing a signal indicative of the absolute angular position of the lower shaft signal with the signal from the upper shaft sensing means and ruling out the candidates that give implausible torsion bar deflection values over time as the steering system moves until only one plausible candidate remains.
 9. The system according to claim 1 wherein the known angular range is once per motor rotor electrical rotation.
 10. The method according to claim 8 wherein the known angular range is once per motor rotor electrical rotation. 